package net.huashitong.ssydt.provider.sys.service;


import net.huashitong.ssydt.PaginationResult;
import net.huashitong.ssydt.sys.entity.SsSysBas;
import net.huashitong.ssydt.sys.entity.vo.SsSysBasQueryInVO;

import java.util.List;

/**
 * @author huiyang.yu
 */
//@CacheConfig
public interface SsSysBasService {

    List<SsSysBas> queryByBasType(String basType);

    //    @Cacheable("ssSysBas")
    SsSysBas getByBasTypeAndDictValue(String basType, String dictValue);

    List<SsSysBas> queryNotTypeByBasType(String basType);

    List<SsSysBas> queryNotTypeByBasTypeAndAttr1(String basType, String attr1);

    /**
     * 分页查询系统参数表
     *
     * @param ssSysBasQueryInVO 分页查询条件
     * @return 分页查询结果
     */
    PaginationResult<SsSysBas> paginationQuery(SsSysBasQueryInVO ssSysBasQueryInVO);

    /**
     * 新增系统参数
     *
     * @param ssSysBas 系统参数
     */
    void addSysBas(SsSysBas ssSysBas);

    /**
     * 修改系统参数
     *
     * @param ssSysBas 系统参数
     */
    void updateSysBas(SsSysBas ssSysBas);

    /**
     * 删除系统参数
     *
     * @param id ID
     */
    void deleteSysBas(Long id);
}
